#pragma once

#include <boostext/signal.hpp>
#include <boostext/typedefs.hpp>
#include <boostext/util/make_shared.hpp>

#include <engine.core/noncopyable.hpp>

#include "exports.hpp"
#include "Surface.hpp"




namespace Engine
{
	namespace Video
	{
		struct ENGINE_VIDEO_API TextureUsage
		{
			enum Type
			{
				Normal,
				Backbuffer,
				Depthbuffer,
			};
		};
		///////////////////////////////////////////////////////////////////////////////////////////




		class ENGINE_VIDEO_API Texture abstract
			: public noncopyable
		{
		public:

			SHARED(Texture);
			virtual ~Texture() {}
		};
		///////////////////////////////////////////////////////////////////////////////////////////
	}
	///////////////////////////////////////////////////////////////////////////////////////////////
}
///////////////////////////////////////////////////////////////////////////////////////////////////
